#include<iostream>
using namespace std;

//剑指offer题11：输入一个整数，输出该数二进制表示中1的个数。其中负数用补码表示
int NumberOf1(size_t n)
{
	int count = 0;
	while (n)
	{
		++count;
		n &= (n - 1);
	}
	return count;
}
int main()
{
	cout << NumberOf1(-1) << endl;
	return 0;
}
